MPC Tally API Server
Introduction
Welcome
Getting started
Graphql Playgound
Quickstart Example
Rate limits
Operations
Queries
Types
Account
AccountID
AccountType
Address
Allocation
Any
AssetID
Block
BlockID
BlockOrTimestamp
BlocklessTimestamp
Boolean
Bytes
Chain
ChainID
CompetencyFieldDescriptor
Contracts
Contributor
DataDecoded
Date
DecodedCalldata
DecodedParameter
Delegate
DelegateInput
DelegateStatement
DelegatesFiltersInput
DelegatesInput
DelegatesSortBy
DelegatesSortInput
Delegation
DelegationInput
DelegationsFiltersInput
DelegationsInput
DelegationsSortBy
DelegationsSortInput
Eligibility
EligibilityStatus
EndorsementService
ExecutableCall
ExecutableCallType
Float
Governor
GovernorContract
GovernorInput
GovernorKind
GovernorMetadata
GovernorParameters
GovernorType
GovernorsFiltersInput
GovernorsInput
GovernorsSortBy
GovernorsSortInput
Hash
HashID
ID
Int
IntID
Issue
Member
NativeCurrency
Node
Organization
OrganizationInput
OrganizationMetadata
OrganizationsFiltersInput
OrganizationsInput
OrganizationsSortBy
OrganizationsSortInput
PageInfo
PageInput
PaginatedOutput
Parameter
Proposal
ProposalEvent
ProposalEventType
ProposalInput
ProposalMetadata
ProposalStats
ProposalStatus
ProposalsCreatedCountInput
ProposalsFiltersInput
ProposalsInput
ProposalsSortBy
ProposalsSortInput
Role
StakeEarning
StakeEvent
StakeEventType
String
Timestamp
Token
TokenContract
TokenInput
TokenType
Uint256
UserBio
ValueDecoded
Vote
VoteStats
VoteType
VotesFiltersInput
VotesInput
VotesSortBy
VotesSortInput
Tally API Reference
Welcome to Tally's public API docs. These API endpoints make it easy to pull data about Governor contracts, their proposals, and accounts that participate in on-chain DAOs.
Contact
API Support
support@tally.xyz
https://discord.com/invite/sCGnpWH3m4
License
An Apache 2.0 covers these API docs
https://www.apache.org/licenses/LICENSE-2.0.html
Terms of Service
https://static.tally.xyz/terms.html
API Endpoints
https://api.tally.xyz/query
Headers
# A Tally API token
Api-Key: YOUR_KEY_HERE
Getting started
To get started, you'll need an API key. Create by signing in to Tally and requesting on your user settings page. You'll need to include the API key as an HTTP header with every request.
Graphql Playgound
Once you have an API key, you can test out these endpoints with the Graphql API Playground. Add your API key under the "Request Headers" section, like this {"Api-Key":"YOUR_KEY_HERE"} Note that the playground also includes undocumented endpoints. Using them is not recommended for production apps, because they are subject to change without notice.
Quickstart Example
To see an example app that uses the API, clone this quickstart example. This React app uses the Tally API to list Governors and their Proposals.
Rate limits
Because the API is free, we have a fairly low rate limit to keep costs down. If you're interested in increasing your rate limit, reach out to us at support@tally.xyz.
Queries
accounts
Response
Returns [Account!]!
Arguments
Name Description
ids - [AccountID!]
addresses - [Address!]
Example
Query
query Accounts(
$ids: [AccountID!],
$addresses: [Address!]
) {
accounts(
ids: $ids,
addresses: $addresses
) {
id
address
ens
twitter
name
bio
picture
safes
type
votes
proposalsCreatedCount
}
}
Variables
{
"ids": [
"eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc"
],
"addresses": [
"0x1234567800000000000000000000000000000abc"
]
}
Response
{
"data": {
"accounts": [
{
"id": "4",
"address": "0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc",
"ens": "tallyxyz.eth",
"twitter": "@tallyxyz",
"name": "Tally",
"bio": "Now accepting delegations!",
"picture": "https://static.tally.xyz/logo.png",
"safes": [
"eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc"
],
"type": "EOA",
"votes": 10987654321,
"proposalsCreatedCount": 123
}
]
}
}
Queries
chains
Response
Returns [Chain]!
Example
Query
query Chains {
chains {
id
layer1Id
name
mediumName
shortName
blockTime
isTestnet
nativeCurrency {
name
symbol
decimals
}
chain
useLayer1VotingPeriod
}
}
Response
{
"data": {
"chains": [
{
"id": "eip155:1",
"layer1Id": "eip155:1",
"name": "Ethereum Mainnet",
"mediumName": "Ethereum",
"shortName": "eth",
"blockTime": 12,
"isTestnet": false,
"nativeCurrency": "ETH",
"chain": "ETH",
"useLayer1VotingPeriod": false
}
]
}
}
Queries
delegate
Description
Returns delegate information by an address for an organization or governor.
Response
Returns a Delegate
Arguments
Name Description
input - DelegateInput!
Example
Query
query Delegate($input: DelegateInput!) {
delegate(input: $input) {
id
account {
id
address
ens
twitter
name
bio
picture
safes
type
votes
proposalsCreatedCount
}
chainId
delegatorsCount
governor {
id
chainId
contracts {
...ContractsFragment
}
isIndexing
isBehind
isPrimary
kind
name
organization {
...OrganizationFragment
}
proposalStats {
...ProposalStatsFragment
}
parameters {
...GovernorParametersFragment
}
quorum
slug
timelockId
tokenId
token {
...TokenFragment
}
type
delegatesCount
delegatesVotesCount
tokenOwnersCount
metadata {
...GovernorMetadataFragment
}
}
organization {
id
slug
name
chainIds
tokenIds
governorIds
metadata {
...OrganizationMetadataFragment
}
creator {
...AccountFragment
}
hasActiveProposals
proposalsCount
delegatesCount
delegatesVotesCount
tokenOwnersCount
endorsementService {
...EndorsementServiceFragment
}
}
statement {
id
address
organizationID
statement
statementSummary
isSeekingDelegation
issues {
...IssueFragment
}
}
token {
id
type
name
symbol
supply
decimals
eligibility {
...EligibilityFragment
}
isIndexing
isBehind
}
votesCount
}
}
Variables
{"input": DelegateInput}
Response
{
"data": {
"delegate": {
"id": 2207450143689540900,
"account": Account,
"chainId": "eip155:1",
"delegatorsCount": 987,
"governor": Governor,
"organization": Organization,
"statement": DelegateStatement,
"token": Token,
"votesCount": 10987654321
}
}
}
Queries
delegatee
Description
Returns a delegatee of a user, to whom this user has delegated, for a governor
Response
Returns a Delegation
Arguments
Name Description
input - DelegationInput!
Example
Query
query Delegatee($input: DelegationInput!) {
delegatee(input: $input) {
id
blockNumber
blockTimestamp
chainId
delegator {
id
address
ens
twitter
name
bio
picture
safes
type
votes
proposalsCreatedCount
}
delegate {
id
address
ens
twitter
name
bio
picture
safes
type
votes
proposalsCreatedCount
}
organization {
id
slug
name
chainIds
tokenIds
governorIds
metadata {
...OrganizationMetadataFragment
}
creator {
...AccountFragment
}
hasActiveProposals
proposalsCount
delegatesCount
delegatesVotesCount
tokenOwnersCount
endorsementService {
...EndorsementServiceFragment
}
}
token {
id
type
name
symbol
supply
decimals
eligibility {
...EligibilityFragment
}
isIndexing
isBehind
}
votes
}
}
Variables
{"input": DelegationInput}
Response
{
"data": {
"delegatee": {
"id": 2207450143689540900,
"blockNumber": 987,
"blockTimestamp": 1663224162,
"chainId": "eip155:1",
"delegator": Account,
"delegate": Account,
"organization": Organization,
"token": Token,
"votes": 10987654321
}
}
}
Queries
delegatees
Description
Returns a paginated list of delegatees of a user, to whom this user has delegated, that match the provided filters.
Response
Returns a PaginatedOutput!
Arguments
Name Description
input - DelegationsInput!
Example
Query
query Delegatees($input: DelegationsInput!) {
delegatees(input: $input) {
nodes {
... on Delegate {
...DelegateFragment
}
... on Organization {
...OrganizationFragment
}
... on Member {
...MemberFragment
}
... on Delegation {
...DelegationFragment
}
... on Governor {
...GovernorFragment
}
... on Proposal {
...ProposalFragment
}
... on Vote {
...VoteFragment
}
... on StakeEvent {
...StakeEventFragment
}
... on StakeEarning {
...StakeEarningFragment
}
... on Contributor {
...ContributorFragment
}
... on Allocation {
...AllocationFragment
}
}
pageInfo {
firstCursor
lastCursor
count
}
}
}
Variables
{"input": DelegationsInput}
Response
{
"data": {
"delegatees": {
"nodes": [Delegate],
"pageInfo": PageInfo
}
}
}
Queries
delegates
Description
Returns a paginated list of delegates that match the provided filters.
Response
Returns a PaginatedOutput!
Arguments
Name Description
input - DelegatesInput!
Example
Query
query Delegates($input: DelegatesInput!) {
delegates(input: $input) {
nodes {
... on Delegate {
...DelegateFragment
}
... on Organization {
...OrganizationFragment
}
... on Member {
...MemberFragment
}
... on Delegation {
...DelegationFragment
}
... on Governor {
...GovernorFragment
}
... on Proposal {
...ProposalFragment
}
... on Vote {
...VoteFragment
}
... on StakeEvent {
...StakeEventFragment
}
... on StakeEarning {
...StakeEarningFragment
}
... on Contributor {
...ContributorFragment
}
... on Allocation {
...AllocationFragment
}
}
pageInfo {
firstCursor
lastCursor
count
}
}
}
Variables
{"input": DelegatesInput}
Response
{
"data": {
"delegates": {
"nodes": [Delegate],
"pageInfo": PageInfo
}
}
}
Queries
delegators
Description
Returns a paginated list of delegators of a delegate that match the provided filters.
Response
Returns a PaginatedOutput!
Arguments
Name Description
input - DelegationsInput!
Example
Query
query Delegators($input: DelegationsInput!) {
delegators(input: $input) {
nodes {
... on Delegate {
...DelegateFragment
}
... on Organization {
...OrganizationFragment
}
... on Member {
...MemberFragment
}
... on Delegation {
...DelegationFragment
}
... on Governor {
...GovernorFragment
}
... on Proposal {
...ProposalFragment
}
... on Vote {
...VoteFragment
}
... on StakeEvent {
...StakeEventFragment
}
... on StakeEarning {
...StakeEarningFragment
}
... on Contributor {
...ContributorFragment
}
... on Allocation {
...AllocationFragment
}
}
pageInfo {
firstCursor
lastCursor
count
}
}
}
Variables
{"input": DelegationsInput}
Response
{
"data": {
"delegators": {
"nodes": [Delegate],
"pageInfo": PageInfo
}
}
}
Queries
governor
Description
Returns governor by ID or slug.
Response
Returns a Governor!
Arguments
Name Description
input - GovernorInput!
Example
Query
query Governor($input: GovernorInput!) {
governor(input: $input) {
id
chainId
contracts {
governor {
...GovernorContractFragment
}
tokens {
...TokenContractFragment
}
}
isIndexing
isBehind
isPrimary
kind
name
organization {
id
slug
name
chainIds
tokenIds
governorIds
metadata {
...OrganizationMetadataFragment
}
creator {
...AccountFragment
}
hasActiveProposals
proposalsCount
delegatesCount
delegatesVotesCount
tokenOwnersCount
endorsementService {
...EndorsementServiceFragment
}
}
proposalStats {
total
active
failed
passed
}
parameters {
quorumVotes
proposalThreshold
votingDelay
votingPeriod
gracePeriod
quorumNumerator
quorumDenominator
clockMode
nomineeVettingDuration
fullWeightDuration
}
quorum
slug
timelockId
tokenId
token {
id
type
name
symbol
supply
decimals
eligibility {
...EligibilityFragment
}
isIndexing
isBehind
}
type
delegatesCount
delegatesVotesCount
tokenOwnersCount
metadata {
description
}
}
}
Variables
{"input": GovernorInput}
Response
{
"data": {
"governor": {
"id": "eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc",
"chainId": "eip155:1",
"contracts": Contracts,
"isIndexing": true,
"isBehind": false,
"isPrimary": false,
"kind": "single",
"name": "Uniswap",
"organization": Organization,
"proposalStats": ProposalStats,
"parameters": GovernorParameters,
"quorum": 10987654321,
"slug": "uniswap",
"timelockId": "eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc",
"tokenId": "eip155:1/erc20:0x6b175474e89094c44da98b954eedeac495271d0f",
"token": Token,
"type": "governoralpha",
"delegatesCount": 123,
"delegatesVotesCount": 10987654321,
"tokenOwnersCount": 123,
"metadata": GovernorMetadata
}
}
}
Queries
governors
Description
Returns a paginated list of governors that match the provided filters. Note: Tally may deactivate governors from time to time. If you wish to include those set includeInactive to true.
Response
Returns a PaginatedOutput!
Arguments
Name Description
input - GovernorsInput!
Example
Query
query Governors($input: GovernorsInput!) {
governors(input: $input) {
nodes {
... on Delegate {
...DelegateFragment
}
... on Organization {
...OrganizationFragment
}
... on Member {
...MemberFragment
}
... on Delegation {
...DelegationFragment
}
... on Governor {
...GovernorFragment
}
... on Proposal {
...ProposalFragment
}
... on Vote {
...VoteFragment
}
... on StakeEvent {
...StakeEventFragment
}
... on StakeEarning {
...StakeEarningFragment
}
... on Contributor {
...ContributorFragment
}
... on Allocation {
...AllocationFragment
}
}
pageInfo {
firstCursor
lastCursor
count
}
}
}
Variables
{"input": GovernorsInput}
Response
{
"data": {
"governors": {
"nodes": [Delegate],
"pageInfo": PageInfo
}
}
}
Queries
organization
Description
Returns organization by ID or slug.
Response
Returns an Organization!
Arguments
Name Description
input - OrganizationInput!
Example
Query
query Organization($input: OrganizationInput!) {
organization(input: $input) {
id
slug
name
chainIds
tokenIds
governorIds
metadata {
color
description
icon
}
creator {
id
address
ens
twitter
name
bio
picture
safes
type
votes
proposalsCreatedCount
}
hasActiveProposals
proposalsCount
delegatesCount
delegatesVotesCount
tokenOwnersCount
endorsementService {
id
competencyFields {
...CompetencyFieldDescriptorFragment
}
}
}
}
Variables
{"input": OrganizationInput}
Response
{
"data": {
"organization": {
"id": 2207450143689540900,
"slug": "abc123",
"name": "xyz789",
"chainIds": ["eip155:1"],
"tokenIds": [
"eip155:1/erc20:0x6b175474e89094c44da98b954eedeac495271d0f"
],
"governorIds": [
"eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc"
],
"metadata": OrganizationMetadata,
"creator": Account,
"hasActiveProposals": true,
"proposalsCount": 123,
"delegatesCount": 123,
"delegatesVotesCount": 10987654321,
"tokenOwnersCount": 123,
"endorsementService": EndorsementService
}
}
}
Queries
organizations
Description
Returns a paginated list of organizations that match the provided filters.
Response
Returns a PaginatedOutput!
Arguments
Name Description
input - OrganizationsInput
Example
Query
query Organizations($input: OrganizationsInput) {
organizations(input: $input) {
nodes {
... on Delegate {
...DelegateFragment
}
... on Organization {
...OrganizationFragment
}
... on Member {
...MemberFragment
}
... on Delegation {
...DelegationFragment
}
... on Governor {
...GovernorFragment
}
... on Proposal {
...ProposalFragment
}
... on Vote {
...VoteFragment
}
... on StakeEvent {
...StakeEventFragment
}
... on StakeEarning {
...StakeEarningFragment
}
... on Contributor {
...ContributorFragment
}
... on Allocation {
...AllocationFragment
}
}
pageInfo {
firstCursor
lastCursor
count
}
}
}
Variables
{"input": OrganizationsInput}
Response
{
"data": {
"organizations": {
"nodes": [Delegate],
"pageInfo": PageInfo
}
}
}
Queries
proposal
Description
Returns a proposal by ID or onchainId + governorId. Also retruns latest draft version by ID.
Response
Returns a Proposal!
Arguments
Name Description
input - ProposalInput!
Example
Query
query Proposal($input: ProposalInput!) {
proposal(input: $input) {
id
onchainId
block {
id
number
timestamp
ts
}
chainId
creator {
id
address
ens
twitter
name
bio
picture
safes
type
votes
proposalsCreatedCount
}
end {
... on Block {
...BlockFragment
}
... on BlocklessTimestamp {
...BlocklessTimestampFragment
}
}
events {
block {
...BlockFragment
}
chainId
createdAt
type
txHash
}
executableCalls {
calldata
chainId
index
signature
target
type
value
decodedCalldata {
...DecodedCalldataFragment
}
}
governor {
id
chainId
contracts {
...ContractsFragment
}
isIndexing
isBehind
isPrimary
kind
name
organization {
...OrganizationFragment
}
proposalStats {
...ProposalStatsFragment
}
parameters {
...GovernorParametersFragment
}
quorum
slug
timelockId
tokenId
token {
...TokenFragment
}
type
delegatesCount
delegatesVotesCount
tokenOwnersCount
metadata {
...GovernorMetadataFragment
}
}
metadata {
title
description
eta
ipfsHash
previousEnd
timelockId
txHash
discourseURL
snapshotURL
}
organization {
id
slug
name
chainIds
tokenIds
governorIds
metadata {
...OrganizationMetadataFragment
}
creator {
...AccountFragment
}
hasActiveProposals
proposalsCount
delegatesCount
delegatesVotesCount
tokenOwnersCount
endorsementService {
...EndorsementServiceFragment
}
}
proposer {
id
address
ens
twitter
name
bio
picture
safes
type
votes
proposalsCreatedCount
}
quorum
status
start {
... on Block {
...BlockFragment
}
... on BlocklessTimestamp {
...BlocklessTimestampFragment
}
}
voteStats {
type
votesCount
votersCount
percent
}
}
}
Variables
{"input": ProposalInput}
Response
{
"data": {
"proposal": {
"id": 2207450143689540900,
"onchainId": "xyz789",
"block": Block,
"chainId": "eip155:1",
"creator": Account,
"end": Block,
"events": [ProposalEvent],
"executableCalls": [ExecutableCall],
"governor": Governor,
"metadata": ProposalMetadata,
"organization": Organization,
"proposer": Account,
"quorum": 10987654321,
"status": "active",
"start": Block,
"voteStats": [VoteStats]
}
}
}
Queries
proposals
Description
Returns a paginated list of proposals that match the provided filters.
Response
Returns a PaginatedOutput!
Arguments
Name Description
input - ProposalsInput!
Example
Query
query Proposals($input: ProposalsInput!) {
proposals(input: $input) {
nodes {
... on Delegate {
...DelegateFragment
}
... on Organization {
...OrganizationFragment
}
... on Member {
...MemberFragment
}
... on Delegation {
...DelegationFragment
}
... on Governor {
...GovernorFragment
}
... on Proposal {
...ProposalFragment
}
... on Vote {
...VoteFragment
}
... on StakeEvent {
...StakeEventFragment
}
... on StakeEarning {
...StakeEarningFragment
}
... on Contributor {
...ContributorFragment
}
... on Allocation {
...AllocationFragment
}
}
pageInfo {
firstCursor
lastCursor
count
}
}
}
Variables
{"input": ProposalsInput}
Response
{
"data": {
"proposals": {
"nodes": [Delegate],
"pageInfo": PageInfo
}
}
}
Queries
token
Response
Returns a Token!
Arguments
Name Description
input - TokenInput!
Example
Query
query Token($input: TokenInput!) {
token(input: $input) {
id
type
name
symbol
supply
decimals
eligibility {
status
proof
amount
tx
}
isIndexing
isBehind
}
}
Variables
{"input": TokenInput}
Response
{
"data": {
"token": {
"id": "eip155:1/erc20:0x6b175474e89094c44da98b954eedeac495271d0f",
"type": "ERC20",
"name": "xyz789",
"symbol": "abc123",
"supply": 10987654321,
"decimals": 123,
"eligibility": Eligibility,
"isIndexing": false,
"isBehind": false
}
}
}
Queries
votes
Description
Returns a paginated list of votes that match the provided filters.
Response
Returns a PaginatedOutput!
Arguments
Name Description
input - VotesInput!
Example
Query
query Votes($input: VotesInput!) {
votes(input: $input) {
nodes {
... on Delegate {
...DelegateFragment
}
... on Organization {
...OrganizationFragment
}
... on Member {
...MemberFragment
}
... on Delegation {
...DelegationFragment
}
... on Governor {
...GovernorFragment
}
... on Proposal {
...ProposalFragment
}
... on Vote {
...VoteFragment
}
... on StakeEvent {
...StakeEventFragment
}
... on StakeEarning {
...StakeEarningFragment
}
... on Contributor {
...ContributorFragment
}
... on Allocation {
...AllocationFragment
}
}
pageInfo {
firstCursor
lastCursor
count
}
}
}
Variables
{"input": VotesInput}
Response
{
"data": {
"votes": {
"nodes": [Delegate],
"pageInfo": PageInfo
}
}
}
Types
Account
Fields
Field Name Description
id - ID!
address - Address!
ens - String
twitter - String
name - String!
bio - String!
picture - String
safes - [AccountID!]
type - AccountType!
votes - Uint256!
Arguments
governorId - AccountID!
proposalsCreatedCount - Int!
Arguments
input - ProposalsCreatedCountInput!
Example
{
"id": 4,
"address": "0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc",
"ens": "tallyxyz.eth",
"twitter": "@tallyxyz",
"name": "Tally",
"bio": "Now accepting delegations!",
"picture": "https://static.tally.xyz/logo.png",
"safes": [
"eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc"
],
"type": "EOA",
"votes": 10987654321,
"proposalsCreatedCount": 123
}
Types
AccountID
Description
AccountID is a CAIP-10 compliant account id.
Example
"eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc"
Types
AccountType
Values
Enum Value Description
EOA
SAFE
Example
"EOA"
Types
Address
Description
Address is a 20 byte Ethereum address, represented as 0x-prefixed hexadecimal.
Example
"0x1234567800000000000000000000000000000abc"
Types
Allocation
Fields
Field Name Description
account - Account!
amount - Uint256!
percent - Float!
Example
{
"account": Account,
"amount": 10987654321,
"percent": 987.65
}
Types
Any
Example
Any
Types
AssetID
Description
AssetID is a CAIP-19 compliant asset id.
Example
"eip155:1/erc20:0x6b175474e89094c44da98b954eedeac495271d0f"
Types
Block
Fields
Field Name Description
id - BlockID!
number - Int!
timestamp - Timestamp!
ts - Timestamp!
Example
{
"id": BlockID,
"number": 1553735115537351,
"timestamp": 1663224162,
"ts": 1663224162
}
Types
BlockID
Description
BlockID is a ChainID scoped identifier for identifying blocks across chains. Ex: eip155:1:15672.
Example
BlockID
Types
BlockOrTimestamp
Types
Union Types
Block
BlocklessTimestamp
Example
Block
Types
BlocklessTimestamp
Fields
Field Name Description
timestamp - Timestamp!
Example
{"timestamp": 1663224162}
Types
Boolean
Description
The Boolean scalar type represents true or false.
Types
Bytes
Description
Bytes is an arbitrary length binary string, represented as 0x-prefixed hexadecimal.
Example
"0x4321abcd"
Types
Chain
Description
Chain data in the models are only loaded on server startup. If changed please restart the api servers.
Fields
Field Name Description
id - ChainID! The id in eip155:chain_id
layer1Id - ChainID If chain is an L2, the L1 id in format eip155:chain_id
name - String! Chain name as found in eip lists. e.g.: Ethereum Testnet Rinkeby
mediumName - String! Chain name with removed redundancy and unnecessary words. e.g.: Ethereum Rinkeby
shortName - String! Chain short name as found in eip lists. The Acronym of it. e.g.: rin
blockTime - Float! Average block time in seconds.
isTestnet - Boolean! Boolean true if it is a testnet, false if it's not.
nativeCurrency - NativeCurrency! Data from chain native currency.
chain - String! Chain as parameter found in the eip.
useLayer1VotingPeriod - Boolean! Boolean true if L2 depends on L1 for voting period, false if it doesn't.
Example
{
"id": "eip155:1",
"layer1Id": "eip155:1",
"name": "Ethereum Mainnet",
"mediumName": "Ethereum",
"shortName": "eth",
"blockTime": 12,
"isTestnet": false,
"nativeCurrency": "ETH",
"chain": "ETH",
"useLayer1VotingPeriod": true
}
Types
ChainID
Description
ChainID is a CAIP-2 compliant chain id.
Example
"eip155:1"
Types
CompetencyFieldDescriptor
Fields
Field Name Description
id - IntID!
name - String!
description - String!
Example
{
"id": 2207450143689540900,
"name": "xyz789",
"description": "xyz789"
}
Types
Contracts
Fields
Field Name Description
governor - GovernorContract!
tokens - [TokenContract!]!
Example
{
"governor": GovernorContract,
"tokens": [TokenContract]
}
Types
Contributor
Fields
Field Name Description
id - IntID!
account - Account!
isCurator - Boolean!
isApplyingForCouncil - Boolean!
competencyFieldDescriptors - [CompetencyFieldDescriptor!]!
bio - UserBio!
Example
{
"id": 2207450143689540900,
"account": Account,
"isCurator": false,
"isApplyingForCouncil": true,
"competencyFieldDescriptors": [
CompetencyFieldDescriptor
],
"bio": UserBio
}
Types
DataDecoded
Fields
Field Name Description
method - String!
parameters - [Parameter!]!
Example
{
"method": "abc123",
"parameters": [Parameter]
}
Types
Date
Description
Date is a date in the format ISO 8601 format, e.g. YYYY-MM-DD.
Example
"2022-09-22"
Types
DecodedCalldata
Fields
Field Name Description
signature - String! The function signature/name
parameters - [DecodedParameter!]! The decoded parameters
Example
{
"signature": "xyz789",
"parameters": [DecodedParameter]
}
Types
DecodedParameter
Fields
Field Name Description
name - String! Parameter name
type - String! Parameter type (e.g., 'address', 'uint256')
value - String! Parameter value as a string
Example
{
"name": "xyz789",
"type": "abc123",
"value": "abc123"
}
Types
Delegate
Fields
Field Name Description
id - IntID!
account - Account!
chainId - ChainID
delegatorsCount - Int!
governor - Governor
organization - Organization
statement - DelegateStatement
token - Token
votesCount - Uint256!
Arguments
blockNumber - Int
Example
{
"id": 2207450143689540900,
"account": Account,
"chainId": "eip155:1",
"delegatorsCount": 123,
"governor": Governor,
"organization": Organization,
"statement": DelegateStatement,
"token": Token,
"votesCount": 10987654321
}
Types
DelegateInput
Fields
Input Field Description
address - Address!
governorId - AccountID
organizationId - IntID
Example
{
"address": "0x1234567800000000000000000000000000000abc",
"governorId": "eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc",
"organizationId": 2207450143689540900
}
Types
DelegateStatement
Fields
Field Name Description
id - IntID!
address - Address!
organizationID - IntID!
statement - String!
statementSummary - String
isSeekingDelegation - Boolean
issues - [Issue!]
Example
{
"id": 2207450143689540900,
"address": "0x1234567800000000000000000000000000000abc",
"organizationID": 2207450143689540900,
"statement": "abc123",
"statementSummary": "xyz789",
"isSeekingDelegation": false,
"issues": [Issue]
}
Types
DelegatesFiltersInput
Fields
Input Field Description
address - Address address filter in combination with organizationId allows fetching delegate info of this address from each chain
governorId - AccountID
hasVotes - Boolean
hasDelegators - Boolean
issueIds - [IntID!]
isSeekingDelegation - Boolean
organizationId - IntID
Example
{
"address": "0x1234567800000000000000000000000000000abc",
"governorId": "eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc",
"hasVotes": true,
"hasDelegators": false,
"issueIds": [2207450143689540900],
"isSeekingDelegation": false,
"organizationId": 2207450143689540900
}
Types
DelegatesInput
Fields
Input Field Description
filters - DelegatesFiltersInput!
page - PageInput
sort - DelegatesSortInput
Example
{
"filters": DelegatesFiltersInput,
"page": PageInput,
"sort": DelegatesSortInput
}
Types
DelegatesSortBy
Values
Enum Value Description
id
The default sorting method. It sorts by date.
votes
Sorts by voting power.
delegators
Sorts by total delegators.
prioritized
Sorts by DAO prioritization.
Example
"id"
Types
DelegatesSortInput
Fields
Input Field Description
isDescending - Boolean!
sortBy - DelegatesSortBy!
Example
{"isDescending": true, "sortBy": "id"}
Types
Delegation
Fields
Field Name Description
id - IntID!
blockNumber - Int!
blockTimestamp - Timestamp!
chainId - ChainID!
delegator - Account!
delegate - Account!
organization - Organization!
token - Token!
votes - Uint256!
Example
{
"id": 2207450143689540900,
"blockNumber": 987,
"blockTimestamp": 1663224162,
"chainId": "eip155:1",
"delegator": Account,
"delegate": Account,
"organization": Organization,
"token": Token,
"votes": 10987654321
}
Types
DelegationInput
Fields
Input Field Description
address - Address!
tokenId - AssetID!
Example
{
"address": "0x1234567800000000000000000000000000000abc",
"tokenId": "eip155:1/erc20:0x6b175474e89094c44da98b954eedeac495271d0f"
}
Types
DelegationsFiltersInput
Fields
Input Field Description
address - Address!
governorId - AccountID
organizationId - IntID
Example
{
"address": "0x1234567800000000000000000000000000000abc",
"governorId": "eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc",
"organizationId": 2207450143689540900
}
Types
DelegationsInput
Fields
Input Field Description
filters - DelegationsFiltersInput!
page - PageInput
sort - DelegationsSortInput
Example
{
"filters": DelegationsFiltersInput,
"page": PageInput,
"sort": DelegationsSortInput
}
Types
DelegationsSortBy
Values
Enum Value Description
id
The default sorting method. It sorts by date.
votes
Sorts by voting power.
Example
"id"
Types
DelegationsSortInput
Fields
Input Field Description
isDescending - Boolean!
sortBy - DelegationsSortBy!
Example
{"isDescending": true, "sortBy": "id"}
Types
Eligibility
Fields
Field Name Description
status - EligibilityStatus! Whether the account is eligible to claim
proof - [String!]
amount - Uint256 Amount the account can claim from this token
tx - HashID
Example
{
"status": "NOTELIGIBLE",
"proof": ["abc123"],
"amount": 10987654321,
"tx": "eip155:1:0xcd31cf5dbd3281442d80ceaa529eba678d55be86b7a342f5ed9cc8e49dadc855"
}
Types
EligibilityStatus
Values
Enum Value Description
NOTELIGIBLE
ELIGIBLE
CLAIMED
Example
"NOTELIGIBLE"
Types
EndorsementService
Fields
Field Name Description
id - IntID!
competencyFields - [CompetencyFieldDescriptor!]!
Example
{
"id": 2207450143689540900,
"competencyFields": [CompetencyFieldDescriptor]
}
Types
ExecutableCall
Fields
Field Name Description
calldata - Bytes!
chainId - ChainID!
index - Int!
signature - String Target contract's function signature.
target - Address!
type - ExecutableCallType
value - Uint256!
decodedCalldata - DecodedCalldata Decoded representation of the calldata
Example
{
"calldata": "0x4321abcd",
"chainId": "eip155:1",
"index": 123,
"signature": "abc123",
"target": "0x1234567800000000000000000000000000000abc",
"type": "custom",
"value": 10987654321,
"decodedCalldata": DecodedCalldata
}
Types
ExecutableCallType
Values
Enum Value Description
custom
erc20transfer
erc20transferarbitrum
empty
nativetransfer
orcamanagepod
other
reward
swap
Example
"custom"
Types
Float
Description
The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.
Example
123.45
Types
Governor
Fields
Field Name Description
id - AccountID!
chainId - ChainID!
contracts - Contracts!
isIndexing - Boolean!
isBehind - Boolean!
isPrimary - Boolean!
kind - GovernorKind!
name - String! Tally name of the governor contract
organization - Organization!
proposalStats - ProposalStats!
parameters - GovernorParameters!
quorum - Uint256! The minumum amount of votes (total or for depending on type) that are currently required to pass a proposal.
slug - String! Tally slug used for this goverance: tally.xyz/gov/[slug]
timelockId - AccountID Chain scoped address of the timelock contract for this governor if it exists.
tokenId - AssetID!
token - Token!
type - GovernorType!
delegatesCount - Int!
delegatesVotesCount - Uint256!
tokenOwnersCount - Int!
metadata - GovernorMetadata
Example
{
"id": "eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc",
"chainId": "eip155:1",
"contracts": Contracts,
"isIndexing": true,
"isBehind": false,
"isPrimary": true,
"kind": "single",
"name": "Uniswap",
"organization": Organization,
"proposalStats": ProposalStats,
"parameters": GovernorParameters,
"quorum": 10987654321,
"slug": "uniswap",
"timelockId": "eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc",
"tokenId": "eip155:1/erc20:0x6b175474e89094c44da98b954eedeac495271d0f",
"token": Token,
"type": "governoralpha",
"delegatesCount": 123,
"delegatesVotesCount": 10987654321,
"tokenOwnersCount": 123,
"metadata": GovernorMetadata
}
Types
GovernorContract
Fields
Field Name Description
address - Address!
type - GovernorType!
Example
{
"address": "0x1234567800000000000000000000000000000abc",
"type": "governoralpha"
}
Types
GovernorInput
Fields
Input Field Description
id - AccountID
slug - String
Example
{
"id": "eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc",
"slug": "abc123"
}
Types
GovernorKind
Values
Enum Value Description
single
multiprimary
multisecondary
multiother
hub
spoke
Example
"single"
Types
GovernorMetadata
Fields
Field Name Description
description - String
Example
{"description": "abc123"}
Types
GovernorParameters
Fields
Field Name Description
quorumVotes - Uint256
proposalThreshold - Uint256
votingDelay - Uint256
votingPeriod - Uint256
gracePeriod - Uint256
quorumNumerator - Uint256
quorumDenominator - Uint256
clockMode - String
nomineeVettingDuration - Uint256
fullWeightDuration - Uint256
Example
{
"quorumVotes": 10987654321,
"proposalThreshold": 10987654321,
"votingDelay": 10987654321,
"votingPeriod": 10987654321,
"gracePeriod": 10987654321,
"quorumNumerator": 10987654321,
"quorumDenominator": 10987654321,
"clockMode": "abc123",
"nomineeVettingDuration": 10987654321,
"fullWeightDuration": 10987654321
}
Types
GovernorType
Values
Enum Value Description
governoralpha
governorbravo
openzeppelingovernor
aave
nounsfork
nomineeelection
memberelection
hub
spoke
Example
"governoralpha"
Types
GovernorsFiltersInput
Fields
Input Field Description
organizationId - IntID!
includeInactive - Boolean
excludeSecondary - Boolean
Example
{
"organizationId": 2207450143689540900,
"includeInactive": false,
"excludeSecondary": false
}
Types
GovernorsInput
Fields
Input Field Description
filters - GovernorsFiltersInput!
page - PageInput
sort - GovernorsSortInput
Example
{
"filters": GovernorsFiltersInput,
"page": PageInput,
"sort": GovernorsSortInput
}
Types
GovernorsSortBy
Values
Enum Value Description
id
The default sorting method. It sorts by date.
Example
"id"
Types
GovernorsSortInput
Fields
Input Field Description
isDescending - Boolean!
sortBy - GovernorsSortBy!
Example
{"isDescending": true, "sortBy": "id"}
Types
Hash
Description
Hash is for identifying transactions on a chain. Ex: 0xDEAD.
Example
"0xcd31cf5dbd3281442d80ceaa529eba678d55be86b7a342f5ed9cc8e49dadc855"
Types
HashID
Description
HashID is a ChainID scoped identifier for identifying transactions across chains. Ex: eip155:1:0xDEAD.
Example
"eip155:1:0xcd31cf5dbd3281442d80ceaa529eba678d55be86b7a342f5ed9cc8e49dadc855"
Types
ID
Description
The ID scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an ID.
Example
4
Types
Int
Description
The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.
Example
987
Types
IntID
Description
IntID is a 64bit integer as a string - this is larger than Javascript's number.
Example
2207450143689540900
Types
Issue
Fields
Field Name Description
id - IntID!
organizationId - IntID
name - String
description - String
Example
{
"id": 2207450143689540900,
"organizationId": 2207450143689540900,
"name": "abc123",
"description": "xyz789"
}
Types
Member
Fields
Field Name Description
id - ID!
account - Account!
organization - Organization!
Example
{
"id": 4,
"account": Account,
"organization": Organization
}
Types
NativeCurrency
Fields
Field Name Description
name - String! Name of the Currency. e.g.: Ether
symbol - String! Symbol of the Currency. e.g.: ETH
decimals - Int! Decimals of the Currency. e.g.: 18
Example
{
"name": "abc123",
"symbol": "xyz789",
"decimals": 123
}
Types
Node
Description
Union of all node types that are paginated.
Types
Union Types
Delegate
Organization
Member
Delegation
Governor
Proposal
Vote
StakeEvent
StakeEarning
Contributor
Allocation
Example
Delegate
Types
Organization
Fields
Field Name Description
id - IntID!
slug - String!
name - String!
chainIds - [ChainID!]!
tokenIds - [AssetID!]!
governorIds - [AccountID!]!
metadata - OrganizationMetadata
creator - Account
hasActiveProposals - Boolean!
proposalsCount - Int!
delegatesCount - Int!
delegatesVotesCount - Uint256!
tokenOwnersCount - Int!
endorsementService - EndorsementService
Example
{
"id": 2207450143689540900,
"slug": "xyz789",
"name": "abc123",
"chainIds": ["eip155:1"],
"tokenIds": [
"eip155:1/erc20:0x6b175474e89094c44da98b954eedeac495271d0f"
],
"governorIds": [
"eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc"
],
"metadata": OrganizationMetadata,
"creator": Account,
"hasActiveProposals": true,
"proposalsCount": 987,
"delegatesCount": 123,
"delegatesVotesCount": 10987654321,
"tokenOwnersCount": 987,
"endorsementService": EndorsementService
}
Types
OrganizationInput
Fields
Input Field Description
id - IntID
slug - String
Example
{
"id": 2207450143689540900,
"slug": "abc123"
}
Types
OrganizationMetadata
Fields
Field Name Description
color - String
description - String
icon - String
Example
{
"color": "abc123",
"description": "abc123",
"icon": "abc123"
}
Types
OrganizationsFiltersInput
Fields
Input Field Description
address - Address
chainId - ChainID
hasLogo - Boolean
isMember - Boolean Indicates whether the user holds any of the governance tokens associated with the organization.
Example
{
"address": "0x1234567800000000000000000000000000000abc",
"chainId": "eip155:1",
"hasLogo": true,
"isMember": true
}
Types
OrganizationsInput
Fields
Input Field Description
filters - OrganizationsFiltersInput
page - PageInput
sort - OrganizationsSortInput
Example
{
"filters": OrganizationsFiltersInput,
"page": PageInput,
"sort": OrganizationsSortInput
}
Types
OrganizationsSortBy
Values
Enum Value Description
id
The default sorting method. It sorts by date.
name
explore
Sorts by live proposals and voters as on the Tally explore page.
popular
Same as explore but does not prioritize live proposals.
Example
"id"
Types
OrganizationsSortInput
Fields
Input Field Description
isDescending - Boolean!
sortBy - OrganizationsSortBy!
Example
{"isDescending": true, "sortBy": "id"}
Types
PageInfo
Description
Page metadata including pagination cursors and total count
Fields
Field Name Description
firstCursor - String Cursor of the first item in the page
lastCursor - String Cursor of the last item in the page
count - Int Total number of items across all pages. FYI, this is not yet implemented so the value will always be 0
Example
{
"firstCursor": "xyz789",
"lastCursor": "xyz789",
"count": 123
}
Types
PageInput
Description
Input to specify cursor based pagination parameters. Depending on which page is being fetched, between afterCursor & beforeCursor, only one's value needs to be provided
Fields
Input Field Description
afterCursor - String Cursor to start pagination after to fetch the next page
beforeCursor - String Cursor to start pagination before to fetch the previous page
limit - Int Maximum number of items per page 20 is the hard limit set on the backend
Example
{
"afterCursor": "abc123",
"beforeCursor": "abc123",
"limit": 123
}
Types
PaginatedOutput
Description
Wraps a list of nodes and the pagination info
Fields
Field Name Description
nodes - [Node!]! List of nodes for the page
pageInfo - PageInfo! Pagination information
Example
{
"nodes": [Delegate],
"pageInfo": PageInfo
}
Types
Parameter
Fields
Field Name Description
name - String!
type - String!
value - Any!
valueDecoded - [ValueDecoded!]
Example
{
"name": "xyz789",
"type": "xyz789",
"value": Any,
"valueDecoded": [ValueDecoded]
}
Types
Proposal
Fields
Field Name Description
id - IntID! Tally ID
onchainId - String ID onchain
block - Block
chainId - ChainID!
creator - Account Account that submitted this proposal onchain
end - BlockOrTimestamp! Last block or timestamp when you can cast a vote
events - [ProposalEvent!]! List of state transitions for this proposal. The last ProposalEvent is the current state.
executableCalls - [ExecutableCall!]
governor - Governor!
metadata - ProposalMetadata!
organization - Organization!
proposer - Account Account that created this proposal offchain
quorum - Uint256
status - ProposalStatus!
start - BlockOrTimestamp! First block when you can cast a vote, also the time when quorum is established
voteStats - [VoteStats!]
Example
{
"id": 2207450143689540900,
"onchainId": "abc123",
"block": Block,
"chainId": "eip155:1",
"creator": Account,
"end": Block,
"events": [ProposalEvent],
"executableCalls": [ExecutableCall],
"governor": Governor,
"metadata": ProposalMetadata,
"organization": Organization,
"proposer": Account,
"quorum": 10987654321,
"status": "active",
"start": Block,
"voteStats": [VoteStats]
}
Types
ProposalEvent
Fields
Field Name Description
block - Block
chainId - ChainID!
createdAt - Timestamp!
type - ProposalEventType!
txHash - Hash
Example
{
"block": Block,
"chainId": "eip155:1",
"createdAt": 1663224162,
"type": "activated",
"txHash": "0xcd31cf5dbd3281442d80ceaa529eba678d55be86b7a342f5ed9cc8e49dadc855"
}
Types
ProposalEventType
Values
Enum Value Description
activated
canceled
created
defeated
drafted
executed
expired
extended
pendingexecution
queued
succeeded
callexecuted
crosschainexecuted
Example
"activated"
Types
ProposalInput
Fields
Input Field Description
id - IntID
onchainId - String this is not unique across governors; so must be used in combination with governorId
governorId - AccountID
includeArchived - Boolean
isLatest - Boolean
Example
{
"id": 2207450143689540900,
"onchainId": "xyz789",
"governorId": "eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc",
"includeArchived": true,
"isLatest": true
}
Types
ProposalMetadata
Fields
Field Name Description
title - String! Proposal title: usually first line of description
description - String! Proposal description onchain
eta - Int Time at which a proposal can be executed
ipfsHash - String
previousEnd - Int
timelockId - AccountID
txHash - Hash
discourseURL - String
snapshotURL - String
Example
{
"title": "Fund the Grants Program",
"description": "Here's why it's a good idea to fund the Grants Program",
"eta": 1675437793,
"ipfsHash": "xyz789",
"previousEnd": 123,
"timelockId": "eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc",
"txHash": "0xcd31cf5dbd3281442d80ceaa529eba678d55be86b7a342f5ed9cc8e49dadc855",
"discourseURL": "xyz789",
"snapshotURL": "abc123"
}
Types
ProposalStats
Fields
Field Name Description
total - Int! Total count of proposals
active - Int! Total count of active proposals
failed - Int! Total count of failed proposals including quorum not reached
passed - Int! Total count of passed proposals
Example
{"total": 123, "active": 987, "failed": 123, "passed": 987}
Types
ProposalStatus
Values
Enum Value Description
active
archived
canceled
callexecuted
defeated
draft
executed
expired
extended
pending
queued
pendingexecution
submitted
succeeded
crosschainexecuted
Example
"active"
Types
ProposalsCreatedCountInput
Fields
Input Field Description
governorId - AccountID
organizationId - IntID
Example
{
"governorId": "eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc",
"organizationId": 2207450143689540900
}
Types
ProposalsFiltersInput
Fields
Input Field Description
governorId - AccountID
includeArchived - Boolean Only drafts can be archived; so, this works ONLY with isDraft: true
isDraft - Boolean
organizationId - IntID
proposer - Address Address that created the proposal offchain; in other words, created the draft
Example
{
"governorId": "eip155:1:0x7e90e03654732abedf89Faf87f05BcD03ACEeFdc",
"includeArchived": false,
"isDraft": true,
"organizationId": 2207450143689540900,
"proposer": "0x1234567800000000000000000000000000000abc"
}
Types
ProposalsInput
Fields
Input Field Description
filters - ProposalsFiltersInput!
page - PageInput
sort - ProposalsSortInput
Example
{
"filters": ProposalsFiltersInput,
"page": PageInput,
"sort": ProposalsSortInput
}
Types
ProposalsSortBy
Values
Enum Value Description
id
The default sorting method. It sorts by date.
Example
"id"
Types
ProposalsSortInput
Fields
Input Field Description
isDescending - Boolean!
sortBy - ProposalsSortBy!
Example
{"isDescending": true, "sortBy": "id"}
Types
Role
Values
Enum Value Description
ADMIN
USER
Example
"ADMIN"
Types
StakeEarning
Fields
Field Name Description
amount - Uint256!
date - Date!
Example
{
"amount": 10987654321,
"date": "2022-09-22"
}
Types
StakeEvent
Fields
Field Name Description
amount - Uint256!
block - Block!
type - StakeEventType!
Example
{"amount": 10987654321, "block": Block, "type": "deposit"}
Types
StakeEventType
Values
Enum Value Description
deposit
withdraw
Example
"deposit"
Types
String
Description
The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.
Example
"abc123"
Types
Timestamp
Description
Timestamp is a RFC3339 string.
Example
1663224162
Types
Token
Description
Core type that describes an onchain Token contract
Fields
Field Name Description
id - AssetID!
type - TokenType! Token contract type
name - String! Onchain name
symbol - String! Onchain symbol
supply - Uint256! supply derived from Transfer events
decimals - Int! Number of decimal places included in Uint256 values
eligibility - Eligibility! Eligibility of an account to claim this token
Arguments
id - AccountID!
isIndexing - Boolean!
isBehind - Boolean!
Example
{
"id": "eip155:1/erc20:0x6b175474e89094c44da98b954eedeac495271d0f",
"type": "ERC20",
"name": "xyz789",
"symbol": "xyz789",
"supply": 10987654321,
"decimals": 987,
"eligibility": Eligibility,
"isIndexing": false,
"isBehind": true
}
Types
TokenContract
Fields
Field Name Description
address - Address!
type - TokenType!
Example
{
"address": "0x1234567800000000000000000000000000000abc",
"type": "ERC20"
}
Types
TokenInput
Fields
Input Field Description
id - AssetID!
Example
{
"id": "eip155:1/erc20:0x6b175474e89094c44da98b954eedeac495271d0f"
}
Types
TokenType
Values
Enum Value Description
ERC20
ERC721
ERC20AAVE
SOLANASPOKETOKEN
Example
"ERC20"
Types
Uint256
Description
Uint256 is a large unsigned integer represented as a string.
Example
10987654321
Types
UserBio
Fields
Field Name Description
value - String!
summary - String!
Example
{
"value": "abc123",
"summary": "xyz789"
}
Types
ValueDecoded
Fields
Field Name Description
operation - Int!
to - String!
value - String!
data - String!
dataDecoded - DataDecoded
Example
{
"operation": 987,
"to": "xyz789",
"value": "abc123",
"data": "xyz789",
"dataDecoded": DataDecoded
}
Types
Vote
Fields
Field Name Description
id - IntID!
amount - Uint256!
block - Block!
chainId - ChainID!
isBridged - Boolean
proposal - Proposal!
reason - String
type - VoteType!
txHash - Hash!
voter - Account!
Example
{
"id": 2207450143689540900,
"amount": 10987654321,
"block": Block,
"chainId": "eip155:1",
"isBridged": true,
"proposal": Proposal,
"reason": "abc123",
"type": "abstain",
"txHash": "0xcd31cf5dbd3281442d80ceaa529eba678d55be86b7a342f5ed9cc8e49dadc855",
"voter": Account
}
Types
VoteStats
Description
Voting Summary per Choice
Fields
Field Name Description
type - VoteType!
votesCount - Uint256! Total votes casted for this Choice/VoteType
votersCount - Int! Total number of distinct voters for this Choice/VoteType
percent - Float! Percent of votes casted for this Choice/`Votetype'
Example
{
"type": "abstain",
"votesCount": 10987654321,
"votersCount": 123,
"percent": 987.65
}
Types
VoteType
Values
Enum Value Description
abstain
against
for
pendingabstain
pendingagainst
pendingfor
Example
"abstain"
Types
VotesFiltersInput
Fields
Input Field Description
proposalId - IntID
proposalIds - [IntID!]
voter - Address
includePendingVotes - Boolean
type - VoteType
Example
{
"proposalId": 2207450143689540900,
"proposalIds": [2207450143689540900],
"voter": "0x1234567800000000000000000000000000000abc",
"includePendingVotes": true,
"type": "abstain"
}
Types
VotesInput
Fields
Input Field Description
filters - VotesFiltersInput!
page - PageInput
sort - VotesSortInput
Example
{
"filters": VotesFiltersInput,
"page": PageInput,
"sort": VotesSortInput
}
Types
VotesSortBy
Values
Enum Value Description
id
The default sorting method. It sorts by date.
amount
Example
"id"
Types
VotesSortInput
Fields
Input Field Description
isDescending - Boolean!
sortBy - VotesSortBy!
Example
{"isDescending": true, "sortBy": "id"}
Documentation by Anvil SpectaQL